/**
 * Created by no1 on 2015/9/5.
 */
"use strict";

//var sequelize = require('../sequelize.js');
var sequelize = require('../sequelize.js');
var Sequelize = require('sequelize');
let DataTypes = Sequelize;

var OrderTicket = sequelize.define('mh_order_ticket', {
    //id
    ticket_id: {
      type: DataTypes.INTEGER(20),
      primaryKey: true,
      autoIncrement: true,
      allowNull: false
    },
    //瓷肌券号
    ticket_code: {
      type: DataTypes.INTEGER(12),
      allowNull: false
    },
    //瓷肌券面值
    money: {
      type: DataTypes.DECIMAL(10, 2),
      allowNull: false,
      defaultValue: '0.00'
    },
    //订单id
    order_id: {
      type: DataTypes.INTEGER(10),
      allowNull: false
    },
    //商家id
    vid:{
        type: DataTypes.INTEGER(10),
        allowNull: false
        },
    //消费的机构id
    shopid:{
      type: DataTypes.INTEGER(10),
      allowNull: true
    },
    //0:未消费；1：已消费；2：已取消 3：退款中 4: 已退款
    status: {
      type: DataTypes.INTEGER(10),
      allowNull: false,
      defaultValue: '0'
    },
    //0 未使用  1 可评价 1 已评价
    appraise_state: {
      type: DataTypes.INTEGER(10),
      allowNull: false,
      defaultValue: '0'
    },
    //消费时间
    consume_date: {
      type: DataTypes.INTEGER(10),
      allowNull: true
    },
    //有效开始时间
    valid_start_date: {
      type: DataTypes.INTEGER(10),
      allowNull: true
    },

    //有效结束时间
    valid_end_date: {
      type: DataTypes.INTEGER(10),
      allowNull: true
    },
    //1：已申请；2：瓷肌平台处理完毕；3：支付宝平台处理完毕；4：退款成功
    cancel_status: {
      type: DataTypes.INTEGER(10),
      allowNull: false,
      defaultValue: '0'
    },
    //申请退款时间
    apply_cancel_date: {
      type: DataTypes.INTEGER(10),
      allowNull: true
    },
    //瓷肌处理完成时间
    app_cancel_date: {
      type: DataTypes.INTEGER(10),
      allowNull: true
    },
    // 第三方 支付平台处理完成时间
    alipay_date: {
      type: DataTypes.INTEGER(10),
      allowNull: true
    },
    //退款完成时间
    payback_date: {
      type: DataTypes.INTEGER(10),
      allowNull: true
    },
    //1:退到瓷肌余额；2：退到原第三方支付平台
    payback_option: {
      type: DataTypes.INTEGER(10),
      allowNull: false,
      defaultValue: '1'
    }
  },
  {
    indexes: [
      {
        unique: true,
        fields: ['opy_id']
      }
    ],
    tableName: 'mh_order_ticket',
    createdAt: false,
    updatedAt: false
  }
);

module.exports = OrderTicket;
